package com.sangeng.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sangeng.domain.core.ResponseResult;
import com.sangeng.domain.dto.ArticleInsertDto;
import com.sangeng.domain.dto.ArticleListDto;
import com.sangeng.domain.dto.ArticleListQueryDto;
import com.sangeng.domain.dto.ArticleUpdateDto;
import com.sangeng.domain.entity.Article;
import org.springframework.transaction.annotation.Transactional;


public interface ArticleService extends IService<Article> {
    ResponseResult hotArticleList();

    ResponseResult articleList(ArticleListDto articleListDto);

    ResponseResult getArticleDetialsById(Long id);

    ResponseResult updateViewCount(Long id);

    void updateViewCountToDataBase();

    ResponseResult insertArticle(ArticleInsertDto insertArticle);

    ResponseResult adminArticleList(ArticleListQueryDto articleListDto);

    ResponseResult getAdminArticleById(Long id);

    ResponseResult updateArticle(ArticleUpdateDto updateArticle);

    ResponseResult deleteById(Long id);
}
